Faults in networks, such as broadband networks, are sadly all too common today. Diagnostic systems have been developed to help determine the cause of such faults and more importantly to propose solutions for fixing the faults. These diagnostic systems can operate with or without human intervention. For example, in some diagnostic systems, data can be obtained automatically from the network through sensors. In other systems, the data from the sensors may be supported by data obtained by a user or engineer observing symptoms of the fault. Similarly, the solutions proposed by the diagnostic system may be applied automatically by the network or presented to a user/engineer to apply manually.
Various methods can be used to process the data relating to the symptoms of a fault input into a diagnostic system. The methods attempt to determine the cause of the fault and more importantly, to propose a solution. These methods typically include use of decision trees, rules sets and other expert systems. However, perhaps the most resilient method used in diagnostic systems is case based reasoning.
Case based reasoning (CBR) is based on the principal that most new problems are similar to previously encountered problems. Consequently, solutions to previously encountered problems may also apply to new problems. In a CBR system, a collection of problems, commonly referred to as cases, and their associated solutions are stored in a database. Each case usually comprises data in the form of sets of questions and answers and an associated solution for the case. When a new problem is presented, the stored cases that most closely match the new problem are retrieved and their associated solutions proposed as potential solutions to the new problem.
In comparison to decision tree and rule based systems, which are not able to provide solutions to problems that they have not been specifically designed for, CBR systems can identify the closest cases when an exact match does not occur.
In an example of a diagnostic system based on CBR used in a help-desk environment, a helpdesk operator may ask a user specific questions relating to the problem encountered and then enter the answers into the system. The diagnostic system then processes the input data entered by the operator and provides a proposed solution based on previously stored cases.
Typically, the data encapsulated within the cases is obtained through the use of training data obtained from real problems and their known solutions. Experts within the domain of the problem may also provide data. Therefore, to maintain a diagnostic system to include new cases requires creating new data, uploading the data into the CBR database, and restarting the entire system. This process is both time consuming and requires input from an expert operator in identifying preferred exemplar cases. This means that updates are only done on a periodic basis, so CBR systems rarely reflect the latest data available.
Another problem encountered in diagnostic systems using CBR is noise. Noise manifests itself when multiple cases have differing input data but have identical solutions, and vice versa. Most CBR systems are unable to cope with noise effectively, tending only to operate efficiently with discrete cases.
U.S. Pat. No. 5,799,148 describes a CBR system adapted to overcome the problem of noise in a system. It does so by utilising a confidence function to map a similarity measurement for each retrieved case to a corresponding measure of how many different outcomes are likely given the level of similarity. A report of the existing cases that have the best measures of confidence are then provided in a list.
U.S. Pat. No. 5,586,218 describes a system that performs autonomous learning in a real world environment using case based reasoning. The system is tuned in response to an evaluation of how well it operates within its environment. Selection of a case is based on multiple measures employed in conjunction with random or pseudo-random selection criteria to induce experimentation and gather further information to help solve future problems.